// 入口文件
// createApp 创建实例对象
import { createApp } from 'vue'
import App from './App.vue'
import 'element-plus/dist/index.css'
import { ElButton, ElRow, ElCol, ElInput, ElCheckbox } from 'element-plus';

import { createPinia } from 'pinia'


const app = createApp(App);


app.use(ElButton);
app.use(ElRow);
app.use(ElCol);
app.use(ElInput);
app.use(ElCheckbox);
// 声明使用pinia
app.use(createPinia());
// 挂载
app.mount('#app')




/* 
vue2    vue-router@3

两个的用法基本一致

①下载npm i -S vue-router@3
②创建路由器模块
src  router文件
mode  hash history区别   前台路由和后台路由的区别
routes
③在入口文件当中注册路由器（只发生一次）
④写路由组件views或者 pages
⑤要在哪里显示路由组件
router-link a  相当于导航
router-view  显示路由组件的位置（出口）

keep-alive  作用
  触发生命周期钩子函数是哪两个

嵌套路由 路由重定向  

路由元
路由懒加载



vue3    vue-router@4
①下载 npm i -S vue-router@4









*/

/* 
咱们之前开发用的  vue2 + js
    现在         vue3 + ts
    能开发       vue3 + js 



*/


/* 
vue

都是webpack作为打包工具搭建的脚手架

vue2+js+路由vue-router@3  主流

趋势

vue3+js+路由vue-router@4

vue3 + ts +路由 vue-router@4

vue3+webpack






另一种打架脚手架工具vite   vue3和vite搭建脚手架

vite 打包工具 运行快  

当写项目时 10    100  1000


webpack市场份额 主流地位  兼容


vite 前端   有


vite+vue3 + vue-router@4  ts  pinia

vite+vue3+vue-router@4   vuex@4(pinia)  js

面试题背过
vuex和pinia的区别
pinia state getters actions 没有mutations
pinia 体积小
不用分模块modules
pinia直接更改state数据的









*/